home *** CD-ROM | disk | FTP | other *** search
/ Linux Cubed Series 7: Sunsite / Linux Cubed Series 7 - Sunsite Vol 1.iso / system / shells / scsh-0.4 / scsh-0 / scsh-0.4.2 / misc / annotate.scm next >
Text File  |  1995-10-13  |  894b  |  39 lines

  1. ; Copyright (c) 1993, 1994 Richard Kelsey and Jonathan Rees.  See file COPYING.
  2.  
  3.  
  4.  
  5. ; Derived from
  6. ;  (lambda (x y) (cons (car x) (cdr x)))
  7.  
  8. (define annotate-procedure
  9.   (lap annotate-procedure
  10.        0 (check-nargs= 2)
  11.        2 (make-env 2)
  12.        4 (local0 2)
  13.        6 (stored-object-ref closure 0)
  14.        9 (push)
  15.        10 (local0 2)
  16.        12 (stored-object-ref closure 1)
  17.           (push)
  18.       (local0 1)
  19.        15 (make-stored-object 3 closure)
  20.        18 (return)))
  21.  
  22. ; Derived from
  23. ;  (lambda (x) (if (< 2 (vector-length x)) (vector-ref x 2) #f))
  24.  
  25. (define procedure-annotation
  26.   (lap 0 (check-nargs= 1)
  27.        2 (make-env 1)
  28.        4 (literal '2)
  29.        6 (push)
  30.        7 (local0 1)
  31.        9 (stored-object-length closure)
  32.        11 (<)
  33.        12 (jump-if-false (=> 23))
  34.        15 (local0 1)
  35.        20 (stored-object-ref closure 2)
  36.        22 (return)
  37.        23 (false)
  38.        24 (return)))
  39.